package com.hspedu.homework;

import java.util.Arrays;

/**
 * @author Charlie
 * @version 1.0
 * @date 28/5/2025 下午5:38
 */
public class InsertSortExscise {
    public static void main(String[] args) {
        int[] arr = {333333,455,90, -100, 20, -200, 1,10000};
        //insertSort(arr);

        selectSort(arr);

    }

    public static void insertSort(int[] arr) {

        for (int i = 1; i < arr.length; i++) {


            int insertValue = arr[i];
            int insertIndex = i - 1;
            while (insertIndex >= 0 && insertValue < arr[insertIndex]) {
                arr[insertIndex + 1] = arr[insertIndex];
                insertIndex--;

            }


            arr[insertIndex + 1] = insertValue;
            System.out.println("==the " + i + " loop==");
            System.out.println(Arrays.toString(arr));
        }

    }


    public static void selectSort(int[] arr) {
        //1 遍历数组 找到最小值
        //2 将最小值与第0个位置交换
        //3 开始从第二位的数组找元素


        for (int i = 0; i < arr.length; i++) {

            //第一次排序

            int minIndex = i;

            int minValue = arr[i];

            for (int j = i + 1; j < arr.length; j++) {
                if (arr[j] < minValue) {
                    minValue = arr[j];
                    minIndex = j;
                }
            }
            arr[minIndex] = arr[i];
            arr[i] = minValue;



        }

        System.out.println(Arrays.toString(arr));

        //第二次排序

        /* minvalue = arr[1];


         for (int i = 2; i < arr.length; i++) {
            if (arr[i] < minvalue) {
                minvalue = arr[i];
                index= i;
            }
        }
        temp=arr[1];
        arr[1]=minvalue;
        arr[index]=temp;*/

    }
}

